import {
    mapState,
    mapMutations
} from 'vuex';
import {
    jsonInclude,
    jsonIndex
} from 'utils';
export default {
    methods: {
        add_cart(item) {
            // 添加之前先做判断 购物车是否已经有该商品  includes 判断数组中是否存在某个元素
            item.itemNum = 1;
            item.isChecked = true;
            let lists = JSON.parse(JSON.stringify(this.carts.lists));
            if (jsonInclude(lists, item, "id")) {
                //  为真  不能添加
                lists[jsonIndex(lists, item, 'id')].itemNum++;
            } else {
                lists.unshift(item);
            }
            this.addCart(lists);
            //  成功的提示
            this.$toast({
                message: '加入购物车成功',
                icon: 'success',
                duration: 1000
            });
        },
        ...mapMutations(['addCart'])
    },
    computed: {
        ...mapState(['carts'])
    }
}